package com.rui.patterns.vistor;

import java.util.ArrayList;
import java.util.List;

/**
 * @author : [锐神NO.3]
 * @version : [v1.0]
 * @className : Home
 * @createTime : [2022/2/25 14:20]
 * @description : [对象结构类]
 */

public class Home {

    /**
     * 声明一个集合对象，用来存储元素对象
     */
    private List<Animal> nodeList = new ArrayList<>();

    /**
     * 添加元素功能
     */
    public void add(Animal animal){
        nodeList.add(animal);
    }

    public void action(Person person){
        //遍历集合，遍历每一个元素,访问者访问每一个元素
        for (Animal animal : nodeList) {
            animal.accept(person);
        }
    }
}
